1. Field of the Invention
The present invention relates to data processing systems and in particular to data processing systems that provide graphical user interfaces that permit direct manipulation operations.
2. Description of the Related Art
A data processing system may be provided with a graphical user interface that permits direct manipulation of displayed objects with an on-screen graphical selector, called a pointer, of a mouse, trackball or other pointing device. A graphical user interface may display objects, such as system resources and data files, as icons on a display device such as a display monitor. A system resource may be a device such as a printer which may be represented on the graphical user interface as a printer icon. A data object may be a text file which may be represented in the graphical user interface as a file icon. A person, called a user, who is operating the data processing system may perform various operations by using the pointer to "drag" an object about on the display device. Thus, a user may, through direct manipulation using a pointing device, drag the data object's file icon and drop it upon the display printer device's printer icon, thereby causing the display printer to print the data file.
The displayed appearance of an icon, including both the graphical component and any text accompanying it, may be user selectable and user editable. The displayed appearance of an icon may vary automatically in accordance with the state of the object represented by the icon. Thus, a mailbox icon may change appearance to indicate the presence of new mail, a trash can icon may bulge to show that it contains deleted objects that may be recovered, or a printer icon may change to indicate that the printer has run out of paper.
The pointer is displayed on the desktop. The user may manipulate a pointing device such as a mouse or trackball to move the pointer about on the desktop. The user may specify the sensitivity or "mouse tracking speed" of the pointer to movement of the pointing device by adjusting the amount of screen movement of the pointer for a given movement of the pointing device. Similarly, a user may enable or disable pointer acceleration and adjust the amount of pointer acceleration. Pointer acceleration causes greater movement of the displayed pointer for faster movement of the pointing device over the same distance.
During direct manipulation operations, an icon may be dragged about the desktop with a pointer and dropped on eligible target objects. The displayed appearance of the pointer may change to a "do not" pointer when a target object is not a valid target for the direct manipulation operation.
Some direct manipulation enabled operations, such as print, copy or move, require a greater dedication of system resources for large, storage intensive objects having a large file size, which may be measured in bytes. Printing a large file requires more resources than printing a small file. A user selecting a file of unknown size for printing may prefer not to print the selected file if he learns that the file is too large. Alternatively, the user may prefer to print the selected file on a different printer. Similarly, a user selecting a file of unknown size for printing may realize that he has selected the wrong file if he learns that it has a file size of zero, signifying that the selected file is empty. However, direct manipulation provides no user feedback of file size.